// pages/detail/detail.js
import Toast from '@vant/weapp/toast/toast';
import Dialog from '@vant/weapp/dialog/dialog';

Page({

  /**
   * 页面的初始数据
   */
  data: {
    goodsId: '',
    goodsInfo: {
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    if (options.id) {
      this.setData({
        goodsId: options.id 
      });
      this.loadGoodsDetail(options.id);
    }
    this.loadCartCount();
  },

  /**
   * 加载商品详情
   */
  loadGoodsDetail(goodsId) {
    // 这里可以调用API获取商品详情
    wx.request({
      url: 'https://www.xuzhixiang.top:30001/api/pro/detail/'+goodsId,
      method:'GET',
      // data: { proid: goodsId },
      success: (res) => {
        if(res.data.code == '10001'){

          Toast.fail(res.data.message);

        }else{
          console.log(res.data);
          this.setData({
            goodsInfo: res.data.data
          });
        }
       
      }
    });
    console.log('加载商品详情:', goodsId);
  },

  /**
   * 加载购物车数量
   */
  loadCartCount() {
    // 从本地存储或API获取购物车数量
    const cartCount = wx.getStorageSync('cartCount') || 0;
    this.setData({ cartCount });
  },

  /**
   * SKU选择
   */
  onSkuClick() {
    Toast('SKU选择功能开发中');
  },

  /**
   * 地址选择
   */
  onAddressClick() {
    Toast('地址选择功能开发中');
  },

  /**
   * 服务说明
   */
  onServiceClick() {
    Toast('服务说明功能开发中');
  },

  /**
   * 联系客服
   */
  onContactService() {
    wx.makePhoneCall({
      phoneNumber: '400-123-4567',
      fail: () => {
        Toast('拨打电话失败');
      }
    });
  },

  /**
   * 购物车点击
   */
  onCartClick() {
    wx.switchTab({
      url: '/pages/cart/cart'
    });
  },

  /**
   * 收藏切换
   */
  onFavoriteClick() {
    const isFavorite = !this.data.isFavorite;
    this.setData({ isFavorite });
    Toast(isFavorite ? '已收藏' : '已取消收藏');
  },

  loadCartData(){
    wx.request({
      url: 'https://www.xuzhixiang.top:30001/api/cart/list',
      method:'POST',
      header:{token:wx.getStorageSync('token')},
      data:{
        userid:wx.getStorageSync('userid')
      },
      success:res=>{
        console.log(res.data);
       let  newCartCount  = res.data.data.reduce((sum,v)=>sum+v.num,0)
        this.setData({ cartCount: newCartCount });
         wx.setStorageSync('cartCount', newCartCount);
      }
    })

   
  },

  /**
   * 加入购物车
   */
  onAddToCart() {
    const { goodsInfo, selectedSku, quantity } = this.data;
    
    // 这里可以调用API添加到购物车
    // wx.request({
    //   url: 'your-api-url',
    //   data: {
    //     goodsId: goodsInfo.id,
    //     sku: selectedSku,
    //     quantity: quantity
    //   }
    // });
    let token = wx.getStorageSync('token')
    if(token){
        // 更新购物车数量
        // const newCartCount = this.data.cartCount + quantity;
       
        wx.request({
          url: 'https://www.xuzhixiang.top:30001/api/cart/add',
          method:'POST',
          header:{token:token},
          data:{
            userid:wx.getStorageSync('userid'),
            proid:this.data.goodsId,
            num:1
          },
          success:res=>{
            Toast.success('加入购物车成功')

            //获取最新的购物车数据 
            this.loadCartData()


          }
        })
    
        Toast('已加入购物车')
    }else{
      
        Dialog.confirm({
          title: '未登录',
          message: '是否登录',
        })
          .then(() => {
            // on confirm
            wx.navigateTo({
              url: '/pages/login/login',
            })
          })
          .catch(() => {
            // on cancel
          });
    }
    
   ;
  },

  /**
   * 立即购买
   */
  onBuyNow() {
    const { goodsInfo, selectedSku, quantity } = this.data;
    
    // 跳转到订单确认页面
    wx.navigateTo({
      url: `/pages/order/order?goodsId=${goodsInfo.id || 1}&sku=${selectedSku}&quantity=${quantity}&type=buy`
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.loadCartCount();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    this.loadGoodsDetail(this.data.goodsId);
    wx.stopPullDownRefresh();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {
    const { goodsInfo } = this.data;
    return {
      title: goodsInfo.title,
      path: `/pages/detail/detail?id=${this.data.goodsId}`,
      imageUrl: goodsInfo.images[0]
    };
  }
})